/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package MyBot.reactive;

import cz.cuni.pogamut.Client.*;
import cz.cuni.pogamut.Client.RcvMsgEvent;
import java.util.ArrayList;
import java.util.Collections;

import cz.cuni.pogamut.MessageObjects.*;

import java.util.logging.Logger;

import java.util.Random;
/**
 *
 * @author Ivan Medeiros Monteiro
 */
public abstract class ReactiveBehavior {
    protected AgentMemory m_memory = null;
    protected AgentBody m_body = null;
    protected GameMap m_gameMap = null;
    protected Random m_random = null;


        /** Logger for user */
    public Logger m_log = null;

    /** platform m_log*/
    protected Logger m_platformLog=null;




    public ReactiveBehavior (AgentMemory memory, AgentBody body, GameMap gameMap , Logger log, Logger plataformLog){
        m_memory = memory;
        m_body = body;
        m_gameMap = gameMap;
        m_log = log;
        m_platformLog = plataformLog;
        m_random = new Random();
    }
    
    public void prePrepareAgent() {

    }

    public void postPrepareAgent() {

    }



    public abstract void doLogic();

    public abstract void receiveMessage(RcvMsgEvent e);

}
